From d71c6fbca5144ce1789836e1b6c1d2feb653e0f9 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Sun, 14 Feb 2016 15:57:16 +0100 Subject: [PATCH] Update README.source to current packaging --- debian/README.source | 33 +++++++++++---------------------- 1 file changed, 11 insertions(+), 22 deletions(-) diff --git a/debian/README.source b/debian/README.source index 45764fd4e..2a5c5da68 100644 --- a/debian/README.source +++ b/debian/README.source @@ -1,34 +1,23 @@ -Current packaging of cargo is highly non-standard due to the -fact that both the language (Rust) and its package manager (Cargo) -are young projects with a high rate of changes. +Current packaging of cargo is sub-optimal due to the fact that +both the language (Rust) and its package manager (Cargo) +are involved into self-dependency loops to bootstrap. -Debian has not yet a packaging policy nor a clear vision on how to -package dependencies modules ("crates") in a working and reusable. Moreover, the current approach to modules and registry by cargo is -biased towards an "always-online" use. +biased towards a developer-friendly always-online use. -For these reasons, we currently resort to several workarounds to -build cargo: +This package currently resort to several workarounds to build cargo: 1. we use a custom script (debian/bootstrap.py) to build a local stage0, instead of downloading/embedding a snapshotted binary. - 2. we embed a copy of crates.io-index, to avoid downloading the - registry from github. - 3. we embed all dependencies crates, because cargo needs external - modules but we are still not sure about how they will be packaged - in Debian. + 2. we embed all dependencies crates, because cargo needs external + modules (which need cargo themself to build). 4. we generate a .cargo/config at build-time, to override paths and registry. - 5. we create a temporary git repository at build-time for the + 5. we create a temporary git repository at build-time for the registry, as this is needed by cargo. - -As such, the original source is composed by three tarballs: + +As such, the original source is composed by two tarballs: * cargo source - * crates.io-index registry (under index/) * dependencies crates (under deps/), stripped of unused embedded C libraries -In the next future, we will try to get rid of this complex setup -as much as possible. For the moment, we want to ship rustc+cargo -first and postpone handling of third-party crates and apps. - - -- Luca Bruno Tue, 11 Aug 2015 22:57:36 +0200 + -- Luca Bruno Sat, 13 Feb 2016 17:50:59 +0100 -- 2.30.2